package com.mooke.service;


import com.mooke.entity.*;

import java.util.List;
import java.util.Map;

public interface AdminService {

    //查询所有学院
    List<College> finAll(String id, Map<String, Object> map);

    //删除选定学生的登陆信息
    boolean removeLoginStudent(String id, Map<String, Object> map);

    //获取老师总数
    Integer getCountTeacher(String id, Map<String, Object> map);

    //根据名字查询老师
    List<Teacher> findByNameTeacher(String id, Map<String, Object> map);

    //获取分页查询老师信息
    List<Teacher> findByPagingTeacher(String id, Map<String, Object> map);

    //ajax验证教师工号是否存在
    boolean checkTeacher(String id, Teacher teacher);

    //储存教师信息到teacher表中
    boolean addTeacher(String id, Teacher teacher);

    //储存教师信息到userlogin表中
    boolean addTeacherLogin(String id, Teacher teacher);


    //修改教师信息的保存
    boolean updateTeacher(String id, Teacher teacher);

    //删除选定教师
    boolean removeTeacher(String id, Map<String, Object> map);

    //查询老师请假信息
    boolean queryMoneyleave(String id, Map<String, Object> map);

    //查询老师奖金信息
    boolean queryMoneyget(String id, Map<String, Object> map);

    //查询老师请假信息
    List<Teacher> leave(String id, Map<String, Object> map);

    //查询老师奖金信息
    List<Teacher> get(String id, Map<String, Object> map);

    //发放工资信息
    boolean addWages(String id, Map<String, Object> map);

    // ajax校验部门编号是否存在
    boolean checkcollegeID(String id, College college );

    //添加部门
    boolean addCollegeed(String id, College college);

    //修改部门信息的保存
    boolean updateCollege(String id, College college);

    //考勤查询
    List<Salary> findCheckinginByNameType(String id, Map<String, Object> map);
    List<Salary> findCheckinginByName(String id, Map<String, Object> map);
    List<Salary> findCheckinginByType(String id, Map<String, Object> map);

    //储存考勤信息
    boolean addCheckingin(String id, Salary salary);

    //修改考勤信息的保存
    boolean editCheckingined(String id, Salary salary);

    //删除考勤信息
    boolean removeCheckingin(String id, Salary salary);


    //查询老师请假申请
    List<Teacher> findByNameVacate(String id, Map<String, Object> map);
    Integer getCountByNameVacate(String id, Map<String, Object> map);
    List<Teacher> findByPagingVacate(String id, Map<String, Object> map);
    Integer getCountVacate(String id, Map<String, Object> map);
    List<Teacher> findByNameVacate1(String id, Map<String, Object> map);

    //更新请假状态
    boolean editVacate(String id, Teacher teacher);

    //查询老师奖金信息
    List<Teacher> findByNameBonus(String id, Map<String, Object> map);
    Integer getCountByNameBonus(String id, Map<String, Object> map);
    List<Teacher> findByPagingBonus(String id, Map<String, Object> map);
    Integer getCountBonus(String id, Map<String, Object> map);

    //添加奖金信息的储存
    boolean addBonused(String id, Teacher teacher);

    //修改奖金信息的储存
    boolean editBonused(String id, Teacher teacher);

    //罚金总数
    Integer getCountMoneyleave(String id, Map<String, Object> map);
    //奖金总数
    Integer getCountMoneyget(String id, Map<String, Object> map);
    //基本工资
    Integer getCountMoney(String id, Map<String, Object> map);
    //是否发放
    String getState(String id, Map<String, Object> map);

    //修改合同信息的保存
    boolean updateContract(String id, Teacher teacher);

}
